/***********************************************
 @Name :        小谭老师
 @Time :        2025-2-22
 @Email :       tan.zhipeng@outlook.com
 @Comment :     功能窗口 天气预报
 @FileName :    widget_assist_smart_weather.h
 @Version :     1.0
************************************************/

#ifndef WIDGET_FUNCD_WEATHER_H
#define WIDGET_FUNCD_WEATHER_H

#include <QWidget>
#include <QLabel>
#include <QNetworkAccessManager>  // 网络请求管理器

#include "city_search_handler.h"
#include "weatherinfo.h"
#include "weather_lable.h" // 包含头文件

namespace Ui {
class Widget_funcD_Weather;
}

class Widget_funcD_Weather : public QWidget
{
    Q_OBJECT
    
public:
    explicit Widget_funcD_Weather(QWidget *parent = nullptr);
    ~Widget_funcD_Weather();
    
private slots:
    // 处理网络请求的响应
        void onWeatherReplyFinished(QNetworkReply *reply);
        // 城市搜索完成后调用
        void onCitySearchCompleted();
    
private:
    Ui::Widget_funcD_Weather *ui;
    city_search_handler *m_searchHandler; // 城市搜索处理器
       QNetworkAccessManager *m_netManager;  // 网络请求管理器
       
       WeatherInfo *m_weatherInfo;  // 新增：天气信息对象
       
       Weather_lable *m_tempChart; // 温度曲线控件
           
           // 获取天气信息
           void fetchWeatherInfo(const QString &cityId);
           // 更新UI显示
           void updateWeatherUI();
};

#endif // WIDGET_FUNCD_WEATHER_H
